
## Make file for the words demonstration.

COMPILER=gcc -g -Wno-deprecated
C_PLUS=g++ -g -Wno-deprecated
COMP=$(COMPILER) -o $@ -c
TARGET1=simulator
LIBS=-lpthread
OBJS=Thread.o Scheduler.o Buffer.o Message.o CountingSemaphore.o BoundedBuffer.o Mailer.o Configuration.o Shell.o Node.o SendClockMessage.o RequestClockMessage.o SetOwnClockMessage.o System.o SyncMessage.o iSchedulable.o
.SUFFIXES: no_suffiexes

project : $(TARGET1)

$(TARGET1): simulator.cpp $(OBJS)
	$(C_PLUS)  -o $(TARGET1)  simulator.cpp  $(OBJS) $(LIBS) 
Thread.o: Thread.cpp Thread.h
	$(COMPILER) -D_REENTRANT -o Thread.o -c Thread.cpp
Scheduler.o:  Scheduler.h Scheduler.cpp
	$(C_PLUS) -D_REENTRANT -o Scheduler.o -c Scheduler.cpp
Buffer.o: Buffer.cpp Buffer.h
	$(C_PLUS) -D_REENTRANT -o Buffer.o -c Buffer.cpp
Message.o: Message.cpp Message.h
	$(C_PLUS) -D_REENTRANT -o Message.o -c Message.cpp
CountingSemaphore.o: CountingSemaphore.cpp CountingSemaphore.h
	$(C_PLUS) -D_REENTRANT -o CountingSemaphore.o -c CountingSemaphore.cpp
BoundedBuffer.o: BoundedBuffer.cpp BoundedBuffer.h Buffer.h
	$(C_PLUS) -D_REENTRANT -o BoundedBuffer.o -c BoundedBuffer.cpp
Mailer.o: Mailer.cpp Mailer.h
	$(C_PLUS) -D_REENTRANT -o Mailer.o -c Mailer.cpp
Configuration.o: Configuration.cpp Configuration.h
	$(C_PLUS) -D_REENTRANT -o Configuration.o -c Configuration.cpp
System.o: System.cpp System.h
	$(C_PLUS) -D_REENTRANT -o System.o -c System.cpp
Shell.o: Shell.cpp Shell.h
	$(C_PLUS) -D_REENTRANT -o Shell.o -c Shell.cpp
Node.o: Node.cpp Node.h
	$(C_PLUS) -D_REENTRANT -o Node.o -c Node.cpp
SendClockMessage.o: SendClockMessage.cpp SendClockMessage.h
	$(C_PLUS) -D_REENTRANT -o SendClockMessage.o -c SendClockMessage.cpp
SyncMessage.o: SyncMessage.cpp SyncMessage.h
	$(C_PLUS) -D_REENTRANT -o SyncMessage.o -c SyncMessage.cpp
RequestClockMessage.o: RequestClockMessage.cpp RequestClockMessage.h
	$(C_PLUS) -D_REENTRANT -o RequestClockMessage.o -c RequestClockMessage.cpp
SetOwnClockMessage.o: SetOwnClockMessage.cpp SetOwnClockMessage.h
	$(C_PLUS) -D_REENTRANT -o SetOwnClockMessage.o -c SetOwnClockMessage.cpp
iSchedulable.o: iSchedulable.cpp iSchedulable.h
	$(C_PLUS) -D_REENTRANT -o iSchedulable.o -c iSchedulable.cpp
	
clean: 
	rm *.o
	rm simulator
